Computer Science at Kent Replacing Unevaluated Parts in the Traces of Functional Programs
نویسندگان
چکیده
In non-strict functional programming languages such as Haskell, it happens often that some parts of a program are not evaluated because their values are not demanded. In practice, those unevaluated parts are often replaced by a placeholder (e.g. _) in order to keep the trace size smaller. In the process of algorithmic debugging, one needs to answer several questions in order to locate a program fault. Replacing unevaluated parts makes these questions shorter and semantically clearer. In this paper, we present a formal model of tracing in which unevaluated parts are replaced by the symbol _. The most important property, the correctness of algorithmic debugging, is proved.
منابع مشابه
Replacing Unevaluated Parts in the Traces of Functional Programs
In functional programming languages such as Haskell, it happens often that some parts of a program are not evaluated because their values are not demanded. In practice, those unevaluated parts are often replaced by a placeholder (e.g. _) in order to keep the trace size smaller. For algorithmic debugging, this also makes the questions shorter and clearer. In this paper, we present a formal model...
متن کاملAnalysis of Tall Buildings with Bundled Tube System Subjected to Wind and Earthquake loads
At present, the tubular structural systems are mainly used in tall buildings to withstand earthquake loads. Although it is possible to analyse the structure by finite element methods using standard three dimensional programs, the system is generally time-consuming and expensive in the primary design work. In this paper, for the analysis of Framed-Tube systems, a simple method was studied and de...
متن کاملAnalysis of Tall Buildings with Bundled Tube System Subjected to Wind and Earthquake loads
At present, the tubular structural systems are mainly used in tall buildings to withstand earthquake loads. Although it is possible to analyse the structure by finite element methods using standard three dimensional programs, the system is generally time-consuming and expensive in the primary design work. In this paper, for the analysis of Framed-Tube systems, a simple method was studied and de...
متن کاملA Loop-Detecting Interpreter for Lazy, Higher-Order Programs
Interpreters that detect some forms of non-termination have a variety of applications, from abstract interpretation to partial evaluation. A simple and often used strategy is to test for a repeated state, but this cannot handle innnite values (such as rst-class functions) or unevaluated states such as arise in lazy programs. In this paper we propose using Berry and Curien's theory of sequential...
متن کاملBrain Functional Connectivity Changes During Learning of Time Discrimination
The human brain is a complex system consist of connected nerve cells that adapts with and learn from the environment by changing its regional activities. Synchrony between these regional activities called functional network changes during the life, and with learning of new skills. Time perception and interval discrimination are among the most necessary skills for the human being to perceive mot...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007